#!/bin/bash

# 脚本的错误处理
set -e

# 命名空间
NAMESPACE="architecture-station"

# 启动 MySQL 和 Redis
./deploy-mysql.sh
./deploy-redis.sh
./deploy-nginx-ingress.sh

# 应用 Kubernetes 资源文件

# 首先应用 ConfigMap
kubectl apply -n $NAMESPACE -f ./manifest/nacos-cm-configmap.yaml
kubectl apply -n $NAMESPACE -f ./manifest/common-configmap.yaml

# 应用 Ingress
kubectl apply -n $NAMESPACE -f ./manifest/ingress.yaml

# 然后应用 Service
kubectl apply -n $NAMESPACE -f ./manifest/course-aggregation-service-service.yaml
kubectl apply -n $NAMESPACE -f ./manifest/course-service-service.yaml
kubectl apply -n $NAMESPACE -f ./manifest/gateway-service.yaml
kubectl apply -n $NAMESPACE -f ./manifest/iam-service-service.yaml
kubectl apply -n $NAMESPACE -f ./manifest/nacos-service.yaml
kubectl apply -n $NAMESPACE -f ./manifest/user-service-service.yaml

# 最后应用 Deployment
kubectl apply -n $NAMESPACE -f ./manifest/course-aggregation-service-deployment.yaml
kubectl apply -n $NAMESPACE -f ./manifest/course-service-deployment.yaml
kubectl apply -n $NAMESPACE -f ./manifest/gateway-deployment.yaml
kubectl apply -n $NAMESPACE -f ./manifest/iam-service-deployment.yaml
kubectl apply -n $NAMESPACE -f ./manifest/nacos-deployment.yaml
kubectl apply -n $NAMESPACE -f ./manifest/user-service-deployment.yaml

echo "所有资源已成功部署在命名空间 $NAMESPACE 中。"
